/*
 * AbstractShape.h
 *
 *  Created on: 2010-12-10
 *      Author: wenjian
 */

#ifndef ABSTRACTSHAPE_H_
#define ABSTRACTSHAPE_H_

#include "../../../commons.h"
#include "../../../gdiplus/gdraw.h"
namespace S {
  class AbstractShape: public Ed::Element {
    public:
      AbstractShape();
      virtual ~AbstractShape();

      /**
       * 类型ID
       */
      static unsigned long ClassId;
      /**
       * 类型检查
       */
      virtual bool isInstanceOf(unsigned long classId){
        return AbstractShape::ClassId == classId;
      }

    protected:
      //图形边界矩形
      Gdiplus::RectF shapeRect;
  };
}
#endif /* ABSTRACTSHAPE_H_ */
